草庐IT

c++ - CFileDialog 实例化的问题

全部标签

ruby - 在 Mac OS Lion 上安装 Ruby 1.9.2 时出现问题

我正在运行Lion,使用Xcode4,安装了RVM和自制软件,但我只能运行ruby​​1.8.7spurvis:~rogue$ruby-vruby1.8.7(2010-01-10patchlevel249)[universal-darwin11.0]spurvis:~rogue$我已经通读了几个与该主题相关的线程,但似乎没有任何方法可以解决我的问题:spurvis:~rogue$rvminstall1.9.2InstallingRubyfromsourceto:/Users/rogue/.rvm/rubies/ruby-1.9.2-p290,thismaytakeawhiledepen

ruby - 一些简单的 Ruby 问题——迭代器、 block 和符号

我的背景是PHP和C#,但我真的很想学习RoR。为此,我开始阅读官方文档。我对一些代码示例有一些疑问。第一个是迭代器:classArraydefinject(n)each{|value|n=yield(n,value)}nenddefsuminject(0){|n,value|n+value}enddefproductinject(1){|n,value|n*value}endend我理解yield的意思是“在这里执行关联的block”。令我震惊的是|value|n=each的一部分。其他block对我来说更有意义,因为它们似乎模仿C#风格的lambda:publicintsum(in

ruby - Square 和 Rectangle 继承有什么问题?

我读过一些关于将Square作为Rectangle类的继承类的做法的文章,说它违反了LSP(Liskov替换原则)。我还是不明白,我用Ruby做了一个示例代码:classRectangleattr_accessor:width,:heightdefinitialize(width,height)@width=width@height=heightendendclassSquare谁能告诉我这是怎么回事? 最佳答案 我并不总是热衷于Liskov,因为它似乎限制了您可以基于行为而不是“本质”进行继承。在我看来,继承始终是一种“是一种”关

ruby - 为什么 inspect for the subclasses of built-in classes 中没有列出实例变量?

当我对内置类进行子类化时,为什么inspect中的行为会发生变化。但是当我子类化一个自定义的时没有看到。classMainErrorendclassAnotherTestErrort=TestError.newputst.inspect#output:# 最佳答案 因为很多(大多数?全部?)内置类是用C语言编写的,并且覆盖#inspect。例如,Exception(StandardError的父类(superclass))定义#inspect如下:exc_inspect(VALUEexc){VALUEstr,klass;klass=

ruby - 为什么 Date 类的新实例的默认年份等于 -4712?

运行:require'date'y=Date.newputs"defaultyearis#{y.year}"输出:defaultyearis-4712Date对象的年份默认为-4712是否有任何特殊原因?我认为也许有技术(或传统)原因。我用谷歌搜索并在Ruby文档(2.2.3)中查找了它,但我找不到关于为什么的答案。 最佳答案 公元前4713年1月1日是Julianday的开始,来自维基:TheJulianDayNumber(JDN)istheintegerassignedtoawholesolardayintheJulianday

Ruby 类实例方法 def 初始化 : instance or class method?

让我们来看一个普通的ruby​​类:classPersonattr_accessor:namedefinitializename@name=nameendendbob=Person.new("bob")我的问题是初始化的性质。事情是这样的,new显然是一个类方法,但在我看来initialize是一个实例方法(不是类),它在类方法创建的实例上调用new被调用。我有这个权利吗?或者有人可以阐明一些新的观点吗?我做了一些谷歌搜索,但找不到任何清晰度。 最佳答案 当一个新对象被初始化时(也就是说,当你在一个类上调用new时)有效调用的是这个

c - (U) Ruby 扩展 : rb_gc_mark() and instance variables

我正在编写定义类的ruby​​扩展。如果我使用Data_Wrap_Struct()来实现我对rb_define_alloc_func()的回调,我是否需要手动标记和释放实例变量?还是仍然为我处理? 最佳答案 Ruby的GC将收集在您的Ruby对象的实例变量中引用的所有Ruby对象。您不必也不应该自己释放Ruby实例变量(即在您的扩展中使用rb_iv_set()/rb_iv_get()访问的任何对象)。但是,如果包装的Cstruct引用Ruby对象,那么您必须在传递给Data_Wrap_Struct()的mark回调中标记这些对象。(

Ruby 实例变量作用域问题

我来自C++和JAVA,其中Scope要么是全局的,要么是局部的。我现在正在学习ruby​​-on-rails,对于ruby​​,有本地的、实例的和全局的。直到现在我才真正听说过实例。有无rails,实例变量的理解和用法是怎样的?Global=VariableacrossallobjectsshareInstance=VariableinsideoftheobjectLocal=Variableinsideoftheobject我想我有点把实例和本地混合在一起了。@hamham这是两个不同的变量吧?有时我对Rails感到困惑,因为它们可以互换使用@something和:somethin

ruby-on-rails - Rails3 和 readline 问题

我第一次在rvm中使用rails3(多年来我一直在使用rails2)。尝试启动控制台时,出现此错误:require':没有要加载的文件--readline我用谷歌搜索了一下,这似乎是一个常见问题。大多数解决方案似乎涉及1)安装以下内容:sudoapt-getinstalllibncurses5-devlibreadline5-dev2)转到readline的gem文件夹,运行生成makefile的rubyextconf.rb3)执行make和makeinstall现在,我的rvm中没有安装readline,所以我尝试安装它。但无法弄清楚gem是什么:geminstallreadline

ruby-on-rails - 我的 rackup 文件有什么问题?

当我尝试启动我的unicorn服务器时,我得到了下一个堆栈跟踪:无法理解rackup文件有什么问题?为什么它不可读?sites@bck:~/fatfreecrm$/home/sites/.rvm/gems/ruby-1.9.2-p180@fatfreecrm/bin/unicorn_rails-E-Dproduction-c/home/sites/fatfreecrm/config/unicorn.rb/home/sites/.rvm/gems/ruby-1.9.2-p180@fatfreecrm/gems/unicorn-3.7.0/lib/unicorn/configurator.